package com.guoqiang.base;

public class Demo05 {
    public static void main(String[] args) {
        //操作比较大的数的时候，注意溢出问题
        int money = 10_0000_0000;
        int years = 20;
        int total = money * years;
        System.out.println(total); //-1474836480，计算的时候已经溢出了.

        long totle2 = money * years;  //-1474836480，默认是int，转换之前已经存在问题了
        System.out.println(totle2);

        long totle3 = money * ((long) years); // 先把一个数转换为long
        // 根据 Java 的自动类型提升规则：当 int 与 long 运算时，int 会自动提升为 long，因此 money * ((long) years) 的结果会是 long 类型，避免溢出。
        System.out.println(totle3);  //20000000000
    }
}
